---
title: NLP Example Library
sidebarTitle: NLP Example Library
---

<Tip>
Currently, MindsDB's NLP engine is powered by [Hugging Face](https://huggingface.co/) and [OpenAI](https://openai.com/). But we plan to expand to other NLP options in the future, so stay tuned!
</Tip>

<Tip>
The MindsDB's Hugging Face engine is extensible. We are actively working on adding more tasks and models.
If you have a specific task or model in mind, please let us know in the [MindsDB Community](https://community.mindsdb.com/).
</Tip>

## Hugging Face Examples

Here are the tasks supported by MindsDB and Hugging Face:

- Text Classification
- Zero-Shot Classification
- Translation
- Summarization

Let's go through the examples.

### Text Classification

<AccordionGroup>
    <Accordion title="Spam">
        Let's create a model.

        ```sql
        CREATE MODEL mindsdb.hf_spam
        PREDICT PRED
        USING
        engine = 'huggingface',
        task = 'text-classification',
        model_name = 'mariagrandury/roberta-base-finetuned-sms-spam-detection',
        input_column = 'text',
        labels = ['spam', 'ham'];
        ```

        And check its status.

        ```sql
        DESCRIBE hf_spam;
        ```

        Once the status is `complete`, we can query for predictions.

        ```sql
        SELECT *
        FROM mindsdb.hf_spam
        WHERE text = 'I like you. I love you.';
        ```

        On execution, we get:

        ```sql
        +----+--------------------------------------------------------+-----------------------+
        |PRED|PRED_explain                                            |text                   |
        +----+--------------------------------------------------------+-----------------------+
        |spam|{"ham":0.00020051795581821352,"spam":0.9997995495796204}|I like you. I love you.|
        +----+--------------------------------------------------------+-----------------------+
        ```
    </Accordion>

    <Accordion title="Sentiment">
        Let's create a model.

        ```sql
        CREATE MODEL mindsdb.hf_sentiment
        PREDICT PRED
        USING
        engine = 'huggingface',
        task = 'text-classification',
        model_name = 'cardiffnlp/twitter-roberta-base-sentiment',
        input_column = 'text',
        labels = ['neg', 'neu', 'pos'];
        ```

        And check its status.

        ```sql
        DESCRIBE hf_sentiment;
        ```

        Once the status is `complete`, we can query for predictions.

        ```sql
        SELECT *
        FROM mindsdb.hf_sentiment
        WHERE text = 'I like you. I love you.';
        ```

        On execution, we get:

        ```sql
        +----+--------------------------------------------------------------------------------+-----------------------+
        |PRED|PRED_explain                                                                    |text                   |
        +----+--------------------------------------------------------------------------------+-----------------------+
        |pos |{"neg":0.003046575468033552,"neu":0.021965451538562775,"pos":0.9749879240989685}|I like you. I love you.|
        +----+--------------------------------------------------------------------------------+-----------------------+
        ```
    </Accordion>

    <Accordion title="Sentiment (Finance)">
        Let's create a model.

        ```sql
        CREATE MODEL mindsdb.hf_sentiment_finance
        PREDICT PRED
        USING
        engine = 'huggingface',
        task = 'text-classification',
        model_name = 'ProsusAI/finbert',
        input_column = 'text';
        ```

        And check its status.

        ```sql
        DESCRIBE hf_sentiment_finance;
        ```

        Once the status is `complete`, we can query for predictions.

        ```sql
        SELECT *
        FROM mindsdb.hf_sentiment_finance
        WHERE text = 'Stocks rallied and the British pound gained.';
        ```

        On execution, we get:

        ```sql
        +--------+-------------------------------------------------------------------------------------------+--------------------------------------------+
        |PRED    |PRED_explain                                                                               |text                                        |
        +--------+-------------------------------------------------------------------------------------------+--------------------------------------------+
        |positive|{"negative":0.0344734713435173,"neutral":0.06716493517160416,"positive":0.8983616232872009}|Stocks rallied and the British pound gained.|
        +--------+-------------------------------------------------------------------------------------------+--------------------------------------------+
        ```
    </Accordion>

    <Accordion title="Emotions (6)">
        Let's create a model.

        ```sql
        CREATE MODEL mindsdb.hf_emotions_6
        PREDICT PRED
        USING
        engine = 'huggingface',
        task = 'text-classification',
        model_name = 'j-hartmann/emotion-english-distilroberta-base',
        input_column = 'text';
        ```

        And check its status.

        ```sql
        DESCRIBE hf_emotions_6;
        ```

        Once the status is `complete`, we can query for predictions.

        ```sql
        SELECT *
        FROM mindsdb.hf_emotions_6
        WHERE text = 'Oh Happy Day';
        ```

        On execution, we get:

        ```sql
        +----+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------+
        |PRED|PRED_explain                                                                                                                                                                                                   |text        |
        +----+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------+
        |joy |{"anger":0.0028446922078728676,"disgust":0.0009613594156689942,"fear":0.0007112706662155688,"joy":0.7692911624908447,"neutral":0.037753619253635406,"sadness":0.015293814241886139,"surprise":0.17314413189888}|Oh Happy Day|
        +----+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------+
        ```
    </Accordion>

    <Accordion title="Toxicity">
        Let's create a model.

        ```sql
        CREATE MODEL mindsdb.hf_toxicity
        PREDICT PRED
        USING
        engine = 'huggingface',
        task = 'text-classification',
        model_name = 'SkolkovoInstitute/roberta_toxicity_classifier',
        input_column = 'text';
        ```

        And check its status.

        ```sql
        DESCRIBE hf_toxicity;
        ```

        Once the status is `complete`, we can query for predictions.

        ```sql
        SELECT *
        FROM mindsdb.hf_toxicity
        WHERE text = 'I like you. I love you.';
        ```

        On execution, we get:

        ```sql
        +-------+-------------------------------------------------------------+-----------------------+
        |PRED   |PRED_explain                                                 |text                   |
        +-------+-------------------------------------------------------------+-----------------------+
        |neutral|{"neutral":0.9999547004699707,"toxic":0.00004535282641882077}|I like you. I love you.|
        +-------+-------------------------------------------------------------+-----------------------+
        ```
    </Accordion>

    <Accordion title="ESG (6)">
        Let's create a model.

        ```sql
        CREATE MODEL mindsdb.hf_esg_6
        PREDICT PRED
        USING
        engine = 'huggingface',
        task = 'text-classification',
        model_name = 'yiyanghkust/finbert-esg',
        input_column = 'text';
        ```

        And check its status.

        ```sql
        DESCRIBE hf_esg_6;
        ```

        Once the status is `complete`, we can query for predictions.

        ```sql
        SELECT * FROM  mindsdb.hf_esg_6
        WHERE text = 'Rhonda has been volunteering for several years for a variety of charitable community programs.';
        ```

        On execution, we get:

        ```sql
        +------+---------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------+
        |PRED  |PRED_explain                                                                                                                     |text                                                                                          |
        +------+---------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------+
        |Social|{"Environmental":0.0034267122391611338,"Governance":0.004729956854134798,"None":0.001239194767549634,"Social":0.9906041026115417}|Rhonda has been volunteering for several years for a variety of charitable community programs.|
        +------+---------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------+
        ```
    </Accordion>

    <Accordion title="ESG (26)">
        Let's create a model.

        ```sql
        CREATE MODEL mindsdb.hf_esg_26
        PREDICT PRED
        USING
        engine = 'huggingface',
        task = 'text-classification',
        model_name = 'yiyanghkust/finbert-esg',
        input_column = 'text';
        ```

        And check its status.

        ```sql
        DESCRIBE hf_esg_26;
        ```

        Once the status is `complete`, we can query for predictions.

        ```sql
        SELECT *
        FROM mindsdb.hf_esg_26
        WHERE text = 'We believe it is essential to establish validated conflict-free sources of 3TG within the Democratic Republic of the Congo (the “DRC”) and adjoining countries (together, with the DRC, the “Covered Countries”), so that these minerals can be procured in a way that contributes to economic growth and development in the region. To aid in this effort, we have established a conflict minerals policy and an internal team to implement the policy.';
        ```

        On execution, we get:

        ```sql
        +------+-----------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
        |PRED  |PRED_explain                                                                                                                 |text                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
        +------+-----------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
        |Social|{"Environmental":0.2031959593296051,"Governance":0.08251894265413284,"None":0.050893042236566544,"Social":0.6633920073509216}|We believe it is essential to establish validated conflict-free sources of 3TG within the Democratic Republic of the Congo (the “DRC”) and adjoining countries (together, with the DRC, the “Covered Countries”), so that these minerals can be procured in a way that contributes to economic growth and development in the region. To aid in this effort, we have established a conflict minerals policy and an internal team to implement the policy.|
        +------+-----------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
        ```
    </Accordion>

    <Accordion title="Hate Speech">
        Let's create a model.

        ```sql
        CREATE MODEL mindsdb.hf_hate
        PREDICT PRED
        USING
        engine = 'huggingface',
        task = 'text-classification',
        model_name = 'Hate-speech-CNERG/bert-base-uncased-hatexplain',
        input_column = 'text';
        ```

        And check its status.

        ```sql
        DESCRIBE hf_hate;
        ```

        Once the status is `complete`, we can query for predictions.

        ```sql
        SELECT *
        FROM mindsdb.hf_hate
        WHERE text = 'I like you. I love you.';
        ```

        On execution, we get:

        ```sql
        +------+-----------------------------------------------------------------------------------------------+-----------------------+
        |PRED  |PRED_explain                                                                                   |text                   |
        +------+-----------------------------------------------------------------------------------------------+-----------------------+
        |normal|{"hate speech":0.03551718592643738,"normal":0.7747423648834229,"offensive":0.18974047899246216}|I like you. I love you.|
        +------+-----------------------------------------------------------------------------------------------+-----------------------+
        ```
    </Accordion>

    <Accordion title="Crypto Buy Signals">
        Let's create a model.

        ```sql
        CREATE MODEL mindsdb.hf_crypto
        PREDICT PRED
        USING
        engine = 'huggingface',
        task = 'text-classification',
        model_name = 'ElKulako/cryptobert',
        input_column = 'text';
        ```

        And check its status.

        ```sql
        DESCRIBE hf_crypto;
        ```

        Once the status is `complete`, we can query for predictions.

        ```sql
        SELECT *
        FROM mindsdb.hf_crypto
        WHERE text = 'BTC is killing it right now';
        ```

        On execution, we get:

        ```sql
        +-------+------------------------------------------------------------------------------------------+---------------------------+
        |PRED   |PRED_explain                                                                              |text                       |
        +-------+------------------------------------------------------------------------------------------+---------------------------+
        |Bullish|{"Bearish":0.0002816587220877409,"Bullish":0.559426486492157,"Neutral":0.4402918517589569}|BTC is killing it right now|
        +-------+------------------------------------------------------------------------------------------+---------------------------+
        ```
    </Accordion>

    <Accordion title="US Political Party">
        Let's create a model.

        ```sql
        CREATE MODEL mindsdb.hf_us_party
        PREDICT PRED
        USING
        engine = 'huggingface',
        task = 'text-classification',
        model_name = 'm-newhauser/distilbert-political-tweets',
        input_column = 'text';
        ```

        And check its status.

        ```sql
        DESCRIBE hf_us_party;
        ```

        Once the status is `complete`, we can query for predictions.

        ```sql
        SELECT *
        FROM mindsdb.hf_us_party
        WHERE text = 'This pandemic has shown us clearly the vulgarity of our healthcare system. Highest costs in the world, yet not enough nurses or doctors. Many millions uninsured, while insurance company profits soar. The struggle continues. Healthcare is a human right. Medicare for all.';
        ```

        On execution, we get:

        ```sql
        +--------+-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
        |PRED    |PRED_explain                                                       |text                                                                                                                                                                                                                                                                          |
        +--------+-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
        |Democrat|{"Democrat":0.9999973773956299,"Republican":0.00000261212517216336}|This pandemic has shown us clearly the vulgarity of our healthcare system. Highest costs in the world, yet not enough nurses or doctors. Many millions uninsured, while insurance company profits soar. The struggle continues. Healthcare is a human right. Medicare for all.|
        +--------+-------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
        ```
    </Accordion>

    <Accordion title="Question Detection">
        Let's create a model.

        ```sql
        CREATE MODEL mindsdb.hf_question
        PREDICT PRED
        USING
        engine = 'huggingface',
        task = 'text-classification',
        model_name = 'shahrukhx01/bert-mini-finetune-question-detection',
        input_column = 'text',
        labels = ['question', 'query'];
        ```

        And check its status.

        ```sql
        DESCRIBE hf_question;
        ```

        Once the status is `complete`, we can query for predictions.

        ```sql
        SELECT *
        FROM mindsdb.hf_question
        WHERE text = 'Where can I buy electronics in London';
        ```

        On execution, we get:

        ```sql
        +-----+--------------------------------------------------------------+-------------------------------------+
        |PRED |PRED_explain                                                  |text                                 |
        +-----+--------------------------------------------------------------+-------------------------------------+
        |query|{"query":0.9997773766517639,"question":0.00022261829872149974}|Where can I buy electronics in London|
        +-----+--------------------------------------------------------------+-------------------------------------+
        ```
    </Accordion>

    <Accordion title="Industry">
        Let's create a model.

        ```sql
        CREATE MODEL mindsdb.hf_industry
        PREDICT PRED
        USING
        engine = 'huggingface',
        task = 'text-classification',
        model_name = 'sampathkethineedi/industry-classification',
        input_column = 'text';
        ```

        And check its status.

        ```sql
        DESCRIBE hf_industry;
        ```

        Once the status is `complete`, we can query for predictions.

        ```sql
        SELECT *
        FROM mindsdb.hf_industry
        WHERE text = 'Low latency is one of our best cloud features';
        ```

        On execution, we get:

        ```sql
        +----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------------------------------+
        |PRED            |PRED_explain                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |text                                         |
        +----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------------------------------+
        |Systems Software|{"Advertising":0.000006795735771447653,"Aerospace & Defense":0.00001537964453746099,"Apparel Retail":5.350161131900677e-7,"Apparel, Accessories & Luxury Goods":0.000002604161181807285,"Application Software":0.009111878462135792,"Asset Management & Custody Banks":0.00003155150625389069,"Auto Parts & Equipment":0.000015504940165556036,"Biotechnology":6.533917940032552e-8,"Building Products":7.348538133555849e-8,"Casinos & Gaming":0.000013775999832432717,"Commodity Chemicals":0.0000010432338513055583,"Communications Equipment":0.000019887389498762786,"Construction & Engineering":0.000001826199536480999,"Construction Machinery & Heavy Trucks":0.000009827364920056425,"Consumer Finance":0.0000018292046206624946,"Data Processing & Outsourced Services":0.0000010666744856280275,"Diversified Metals & Mining":0.000006960767223063158,"Diversified Support Services":0.000016824227714096196,"Electric Utilities":0.000003896044290740974,"Electrical Components & Equipment":0.000001626394464437908,"Electronic Equipment & Instruments":0.00003863943129545078,"Environmental & Facilities Services":0.000736175337806344,"Gold":0.00002220332135038916,"Health Care Equipment":4.6927588925882446e-8,"Health Care Facilities":7.432880124724761e-7,"Health Care Services":6.929263918209472e-7,"Health Care Supplies":2.1007431882935634e-7,"Health Care Technology":0.000003907185146090342,"Homebuilding":3.903339234057057e-7,"Hotels, Resorts & Cruise Lines":6.0527639789143e-7,"Human Resource & Employment Services":5.48697983049351e-7,"IT Consulting & Other Services":0.0000723653138265945,"Industrial Machinery":7.230253231682582e-7,"Integrated Telecommunication Services":2.8266379104024963e-7,"Interactive Media & Services":0.00003454017496551387,"Internet & Direct Marketing Retail":0.000003871373337460682,"Internet Services & Infrastructure":0.0007196652004495263,"Investment Banking & Brokerage":0.0000040634336073708255,"Leisure Products":0.000002158361439796863,"Life Sciences Tools & Services":0.000002861268058040878,"Movies & Entertainment":0.000007286199888767442,"Oil & Gas Equipment & Services":0.000004376991455501411,"Oil & Gas Exploration & Production":0.000005569149834627751,"Oil & Gas Refining & Marketing":0.000012647416951949708,"Oil & Gas Storage & Transportation":0.000005852583853993565,"Packaged Foods & Meats":0.0000011130315442642313,"Personal Products":0.00000970239307207521,"Pharmaceuticals":0.0000037546726616710657,"Property & Casualty Insurance":0.000006116194072092185,"Real Estate Operating Companies":0.00001882187461887952,"Regional Banks":0.0000011669454806906288,"Research & Consulting Services":0.000024276219846797176,"Restaurants":8.598511840318679e-7,"Semiconductors":0.0000021006283077440457,"Specialty Chemicals":0.000004160017397225602,"Specialty Stores":2.644004553076229e-7,"Steel":0.0000013566890402216814,"Systems Software":0.9889177083969116,"Technology Distributors":0.00001339179198112106,"Technology Hardware, Storage & Peripherals":0.00004790363891515881,"Thrifts & Mortgage Finance":3.924862141957419e-7,"Trading Companies & Distributors":0.0000035233156268077437}|Low latency is one of our best cloud features|
        +----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------------------------------+
        ```
    </Accordion>
</AccordionGroup>

### Zero-Shot Classification

<AccordionGroup>
    <Accordion title="Bart">
        Let's create a model.

        ```sql
        CREATE MODEL mindsdb.hf_zs_bart
        PREDICT PRED
        USING
        engine = 'huggingface',
        task = 'zero-shot-classification',
        model_name = 'facebook/bart-large-mnli',
        input_column = 'text',
        candidate_labels = ['Books', 'Household', 'Clothing & Accessories', 'Electronics'];
        ```

        And check its status.

        ```sql
        DESCRIBE hf_zs_bart;
        ```

        Once the status is `complete`, we can query for predictions.

        ```sql
        SELECT *
        FROM mindsdb.hf_zs_bart
        WHERE text = 'Paper Plane Design Framed Wall Hanging Motivational Office Decor Art Prints';
        ```

        On execution, we get:

        ```sql
        +---------+------------------------------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
        |PRED     |PRED_explain                                                                                                                              |text                                                                       |
        +---------+------------------------------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
        |Household|{"Books":0.1876104772090912,"Clothing & Accessories":0.08688066899776459,"Electronics":0.14785148203372955,"Household":0.5776574015617371}|Paper Plane Design Framed Wall Hanging Motivational Office Decor Art Prints|
        +---------+------------------------------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
        ```
    </Accordion>
</AccordionGroup>

### Translation

<AccordionGroup>
    <Accordion title="English to French (T5)">
        Let's create a model.

        ```sql
        CREATE MODEL mindsdb.hf_t5_en_fr
        PREDICT PRED
        USING
        engine = 'huggingface',
        task = 'translation',
        model_name = 't5-base',
        input_column = 'text',
        lang_input = 'en',
        lang_output = 'fr';
        ```

        And check its status.

        ```sql
        DESCRIBE hf_t5_en_fr;
        ```

        Once the status is `complete`, we can query for predictions.

        ```sql
        SELECT *
        FROM mindsdb.hf_t5_en_fr
        WHERE text = 'The monkey is on the branch';
        ```

        On execution, we get:

        ```sql
        +---------------------------+---------------------------+
        |PRED                       |text                       |
        +---------------------------+---------------------------+
        |Le singe est sur la branche|The monkey is on the branch|
        +---------------------------+---------------------------+
        ```
    </Accordion>
</AccordionGroup>

### Summarization

<AccordionGroup>
    <Accordion title="Bart">
        Let's create a model.

        ```sql
        CREATE MODEL mindsdb.hf_bart_sum_20
        PREDICT PRED
        USING
        engine = 'huggingface',
        task = 'summarization',
        model_name = 'sshleifer/distilbart-cnn-12-6',
        input_column = 'text',
        min_output_length = 5,
        max_output_length = 20;
        ```

        And check its status.

        ```sql
        DESCRIBE hf_bart_sum_20;
        ```

        Once the status is `complete`, we can query for predictions.

        ```sql
        SELECT *
        FROM mindsdb.hf_bart_sum_20
        WHERE text = 'The tower is 324 metres (1,063 ft) tall, about the same height as an 81-storey building, and the tallest structure in Paris. Its base is square, measuring 125 metres (410 ft) on each side. During its construction, the Eiffel Tower surpassed the Washington Monument to become the tallest man-made structure in the world, a title it held for 41 years until the Chrysler Building in New York City was finished in 1930. It was the first structure to reach a height of 300 metres. Due to the addition of a broadcasting aerial at the top of the tower in 1957, it is now taller than the Chrysler Building by 5.2 metres (17 ft). Excluding transmitters, the Eiffel Tower is the second tallest free-standing structure in France after the Millau Viaduct.';
        ```

        On execution, we get:

        ```sql
        +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
        |PRED                                                   |text                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
        +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
        |The tower is 324 metres (1,063 ft) tall, about the same|The tower is 324 metres (1,063 ft) tall, about the same height as an 81-storey building, and the tallest structure in Paris. Its base is square, measuring 125 metres (410 ft) on each side. During its construction, the Eiffel Tower surpassed the Washington Monument to become the tallest man-made structure in the world, a title it held for 41 years until the Chrysler Building in New York City was finished in 1930. It was the first structure to reach a height of 300 metres. Due to the addition of a broadcasting aerial at the top of the tower in 1957, it is now taller than the Chrysler Building by 5.2 metres (17 ft). Excluding transmitters, the Eiffel Tower is the second tallest free-standing structure in France after the Millau Viaduct.|
        +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
        ```
    </Accordion>

    <Accordion title="Google Pegasus">
        Let's create a model.

        ```sql
        CREATE MODEL mindsdb.hf_peg_sum_20
        PREDICT PRED
        USING
        engine = 'huggingface',
        task = 'summarization',
        model_name = 'google/pegasus-xsum',
        input_column = 'text',
        min_output_length = 5,
        max_output_length = 20;
        ```

        And check its status.

        ```sql
        DESCRIBE hf_peg_sum_20;
        ```

        Once the status is `complete`, we can query for predictions.

        ```sql
        SELECT *
        FROM mindsdb.hf_peg_sum_20
        WHERE text = 'The tower is 324 metres (1,063 ft) tall, about the same height as an 81-storey building, and the tallest structure in Paris. Its base is square, measuring 125 metres (410 ft) on each side. During its construction, the Eiffel Tower surpassed the Washington Monument to become the tallest man-made structure in the world, a title it held for 41 years until the Chrysler Building in New York City was finished in 1930. It was the first structure to reach a height of 300 metres. Due to the addition of a broadcasting aerial at the top of the tower in 1957, it is now taller than the Chrysler Building by 5.2 metres (17 ft). Excluding transmitters, the Eiffel Tower is the second tallest free-standing structure in France after the Millau Viaduct.';
        ```

        On execution, we get:

        ```sql
        +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
        |PRED                                            |text                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
        +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
        |The Eiffel Tower is a landmark in Paris, France.|The tower is 324 metres (1,063 ft) tall, about the same height as an 81-storey building, and the tallest structure in Paris. Its base is square, measuring 125 metres (410 ft) on each side. During its construction, the Eiffel Tower surpassed the Washington Monument to become the tallest man-made structure in the world, a title it held for 41 years until the Chrysler Building in New York City was finished in 1930. It was the first structure to reach a height of 300 metres. Due to the addition of a broadcasting aerial at the top of the tower in 1957, it is now taller than the Chrysler Building by 5.2 metres (17 ft). Excluding transmitters, the Eiffel Tower is the second tallest free-standing structure in France after the Millau Viaduct.|
        +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
        ```
    </Accordion>
</AccordionGroup>

## OpenAI Examples

Here are the tasks supported by MindsDB and OpenAI:

- Answering Questions without Context
- Answering Questions with Context
- Prompt Completion

<Note>
Follow [this instruction](/integrations/ai-engines/openai#setup) to set up the OpenAI integration in MindsDB.
</Note>

Let's go through the examples.

### Answering Questions without Context

<AccordionGroup>
    <Accordion title="Answering Questions without Context">
        Let's create a model.

        ```sql
        CREATE MODEL project_a.openai_test_a
        PREDICT answer
        USING
            engine = 'openai',
            question_column = 'question';
        ```

        On execution, we get:

        ```sql
        Query successfully completed
        ```

        Now we can query for answers.

        ```sql
        SELECT question, answer
        FROM project_a.openai_test_a
        WHERE question = 'Where is Stockholm located?';
        ```

        On execution, we get:

        ```sql
        +---------------------------+-------------------------------+
        |question                   |answer                         |
        +---------------------------+-------------------------------+
        |Where is Stockholm located?|Stockholm is located in Sweden.|
        +---------------------------+-------------------------------+
        ```
    </Accordion>
</AccordionGroup>

### Answering Questions with Context

<AccordionGroup>
    <Accordion title="Answering Questions with Context">
        Let's create a model.

        ```sql
        CREATE MODEL project_a.openai_test_b
        PREDICT answer
        USING
            engine = 'openai',
            question_column = 'question',
            context_column = 'context';
        ```

        On execution, we get:

        ```sql
        Query successfully completed
        ```

        Now we can query for answers.

        ```sql
        SELECT context, question, answer
        FROM project_a.openai_test_b
        WHERE context = 'Answer with a joke'
        AND question = 'How to cook soup?';
        ```

        On execution, we get:

        ```sql
        +-------------------+------------------+---------------------------------------------------------+
        |context            |question          |answer                                                   |
        +-------------------+------------------+---------------------------------------------------------+
        |Answer with a joke |How to cook soup? |How do you cook soup? You put it in a pot and heat it up!|
        +-------------------+------------------+---------------------------------------------------------+
        ```
    </Accordion>
</AccordionGroup>

### Prompt Completion

<AccordionGroup>
    <Accordion title="Prompt Completion with Parameters Provided at Creation Time">
        Let's create a model.

        ```sql
        CREATE MODEL project_a.openai_test_c
        PREDICT answer
        USING
            engine = 'openai',
            prompt_template = 'Context: {{context}}. Question: {{question}}. Answer:',
            max_tokens = 100,
            temperature = 0.3;
        ```

        Let's look at an example that uses parameters provided at model creation time.

        ```sql
        SELECT context, question, answer
        FROM project_a.openai_test_c
        WHERE context = 'Answer accurately'
        AND question = 'How many planets exist in the solar system?';
        ```

        On execution, we get:

        ```sql
        +-------------------+-------------------------------------------+----------------------------------------------+
        |context            |question                                   |answer                                        |
        +-------------------+-------------------------------------------+----------------------------------------------+
        |Answer accurately  |How many planets exist in the solar system?| There are eight planets in the solar system. |
        +-------------------+-------------------------------------------+----------------------------------------------+
        ```
    </Accordion>

    <Accordion title="Prompt Completion with Parameters Provided at Prediction Time">
        Let's create a model.

        ```sql
        CREATE MODEL project_a.openai_test_c
        PREDICT answer
        USING
            engine = 'openai',
            prompt_template = 'Context: {{context}}. Question: {{question}}. Answer:',
            max_tokens = 100,
            temperature = 0.3;
        ```

        Let's look at an example that overrides parameters at prediction time.

        ```sql
        SELECT instruction, answer
        FROM project_a.openai_test_c
        WHERE instruction = 'Speculate extensively'
        USING
            prompt_template = '{{instruction}}. What does Tom Hanks like?',
            max_tokens = 100,
            temperature = 0.5;
        ```

        On execution, we get:

        ```sql
        +----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
        |instruction           |answer                                                                                                                                                                                                                         |
        +----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
        |Speculate extensively |Some people speculate that Tom Hanks likes to play golf, while others believe that he enjoys acting and directing. It is also speculated that he likes to spend time with his family and friends, and that he enjoys traveling.|
        +----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
        ```
    </Accordion>

    <Accordion title="Sentiment Classification">
        Let's create a model.

        ```sql
        CREATE MODEL mindsdb.sentiment_classifier                           
        PREDICT sentiment
        USING
          engine = 'openai',              
          prompt_template = 'predict the sentiment of the text:{{review}} exactly as either positive or negative or neutral';
        ```

        Now we can query for predictions.

        ```sql
        SELECT output.sentiment, input.review
        FROM example_db.demo_data.amazon_reviews AS input
        JOIN mindsdb.sentiment_classifier AS output
        LIMIT 3;
        ```

        On execution, we get:

        ```sql
        +----------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
        | sentiment                              | review                                                                                                                                                                                                                                                                                                                                                                            |
        +----------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
        | positive                               | Late gift for my grandson. He is very happy with it. Easy for him (9yo ).                                                                                                                                                                                                                                                                                                         |
        | The sentiment of the text is positive. | I'm not super thrilled with the proprietary OS on this unit, but it does work okay and does what I need it to do. Appearance is very nice, price is very good and I can't complain too much - just wish it were easier (or at least more obvious) to port new apps onto it. For now, it helps me see things that are too small on my phone while I'm traveling. I'm a happy buyer.|
        | positive                               | I purchased this Kindle Fire HD 8 was purchased for use by 5 and 8 yer old grandchildren. They basically use it to play Amazon games that you download.                                                                                                                                                                                                                           |
        +----------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
        ```
    </Accordion>
</AccordionGroup>


## What's Next?

Have fun while trying it out yourself!

- Bookmark [MindsDB repository on GitHub](https://github.com/mindsdb/mindsdb).
- Sign up for a free [MindsDB account](https://cloud.mindsdb.com/register/nlp).
- Engage with the MindsDB community on
  [Slack](https://mindsdb.com/joincommunity) or
  [GitHub](https://github.com/mindsdb/mindsdb/discussions) to ask questions and
  share your ideas and thoughts.

If this tutorial was helpful, please give us a GitHub star
[here](https://github.com/mindsdb/mindsdb).
